Contact centers are employed by many enterprises to service customer contacts. A typical contact center includes a switch and/or server to receive and route incoming packet-switched and/or circuit-switched contacts and one or more resources, such as human agents and automated resources (e.g., Interactive Voice Response (IVR) units), to service the incoming contacts. Contact centers distribute contacts, whether inbound or outbound, for servicing to any suitable resource according to predefined criteria. In many existing systems, the criteria for servicing the contact from the moment that the contact center becomes aware of the contact until the contact is connected to an agent are customer-specifiable (i.e., programmable by the operator of the contact center), via a capability called vectoring. Normally in present-day Automatic Call Distribution (ACD) systems when the ACD system's controller detects that an agent has become available to handle a contact, the controller identifies all predefined contact-handling queues for the agent (usually in some order of priority) and delivers to the agent the highest-priority oldest contact that matches the agent's highest-priority queue. Generally, the only condition that results in a contact not being delivered to an available agent is that there are no contacts waiting to be handled.
When the contact is in the form of a call, often enqueued callers are placed on hold and ACD resources are used to play announcements or other audio programs (e.g., songs, commercials, etc.) to the callers while the caller waits. The audio programs are commonly referred to as “music-on-hold.” These types of wait treatments are limited in that the callers' in-queue experience is limited and the potential for the caller becoming bored and hanging up increases as the caller continues to wait.
During high contact center volume times there is an increase in the number of lost contacts due to extensive wait times. This is because the contactor tends to get bored with the generic “music-on-hold” types of wait treatments. There is a potential to turn this wait time into a productive time for both the customer and the contact center. For example, in U.S. Pat. No. 6,820,260 to Flockhart et al., the entire contents of which are hereby incorporated herein by this reference, a customized applet is provided that can be downloaded by a customer's communication device or terminal. The applet can be customized based on known customer information and customer location. When a contact is put on hold an applet is provided to the customer for execution by the customer's terminal. When the terminal's communication is taken off hold (e.g., when an agent becomes available), the execution of the applet stops and the agent begins servicing the contact.
Although some solutions have been provided to customize wait treatments for customers on hold, many of these solutions abruptly take the customer out of waiting when an agent is available. This action is based on the assumption that the customer wants to be on hold for the smallest amount of time possible. However, the abrupt interruption of a customer during wait treatment may give some customers the perception that they are being passed between an agent and hold in a haphazard manner. If the wait treatment corresponded to some type of advertisement or even survey it would be imprudent to interrupt the customer during such a wait treatment. However, since it is assumed that the customer does not want to be on hold, the customer is typically not allowed to finish a portion of the wait treatment which may result in the customer becoming annoyed or the contact center foregoing valuable customer feedback.